package com.bjpowernode.ba01;

import org.springframework.stereotype.Component;
/*
* @Component:创建对象的，等同于<bean>标签。
*   属性value：表示对象的名字，就如同bean的id属性。是唯一的
*
*
*   spring中和Component功能一致，创建对象的注解还有
*   1.@Repository(持久层):放在dao层的实现类上面，表示创建dao对象，dao对象可以【访问数据库】
*   2.@Service(业务层):放在service实现类上，表示创建service对象，service对象是做业务处理
*   ，可以有【事务】等功能。
*   3.@Controller(用在控制器上面):放在控制器(处理器)类的上面，创建控制器对象的。
*       控制器对象可以【接收用户提供的参数并且显示请求结果】(Servlet)
*
*   以上三个注解的使用语法和@Component一样，都可以创建对象，但是这三个注解还有额外的功能。
*   @Repository,@Service,@Controller 是给项目分层的
*
* */
//使用value属性指定对象的名称
//@Component(value = "mystudent")

//省略value
@Component("student")

//不指定对象名字。由spring提供默认的对象的名字。这个名称是：类名的首字母小写student
//@Component
public class Student {
    private String name;
    private int age;

    public Student() {
        System.out.println("无惨构造");
    }

    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setAge(int age) {
        this.age = age;
    }
}
